The present invention relates generally to methods and systems for printing computer generated images and more particularly to methods and apparatus for formatting a sheet in preparation for printing on a printing device.
A computer system can output data to a wide variety of output display devices. Output display devices such as laser printers, plotters, imagesetters, and other printing devices produce an image or "visual representation" on a sheet of paper or the like. A printing device can print dots on a piece of paper corresponding to the information of a bitmap (or pixelmap having a depth of two or more bits). A "raster" printing device creates a visual representation by printing an array of pixels arranged in rows and columns from the bitmap.
One type of printing device that can receive data from a computer system is a printing press. A printing press may be used to produce books, newspapers, pamphlets, posters and other single and multi-page printed matter. A printing press may print multiple pages of printed matter at the same time onto a single sheet. Other devices used for printing multiple pages at the same time include imagesetters and plate setters.
When printing multiple pages, the individual pages are arranged in one or more sheets. Each sheet includes a layout of pages that may be ordered or otherwise optimized to facilitate post-printing processes. For example, the layout of the sheet may be arranged such that individual pages are in sequence when folding occurs.
Printing devices that produce output in response to page description language input are widely used. A page description language (PDL) is a high level language for describing objects to be displayed by an output device, such as PostScript.RTM. language available from Adobe Systems Incorporated of San Jose, Calif. A printing device may receive page description data for an entire sheet in the form of a PDL file. In order to produce a finished sheet, the printing device interprets the data contained in the PDL file, renders objects within the data into bitmaps, and after all objects for the sheet are rendered, prints the sheet.
Interpretation is a pre-printing process that includes the sub-functions of language interpretation and output production. Language interpretation may result in the conversion of the data from one format to another and the manipulation of data in a local memory in order to produce a final output. Output production may include the generation of a new PDL file (such as a PDL page file) or raster data.
An interpreter may be used to convert data for a sheet from its associated page description language file format into individual page description page files, one for each output page in the PDL file processed. Conventional interpreters operate on pages of a PDL file in order. That is, the interpreter produces as an output a PDL page file for each page in the sheet in the order that the pages are to be printed for the given sheet.
Imposition is the pre-printing process of arranging the pages for a sheet to achieve a proper sequence or position of each page relative to other pages. Imposition is performed to facilitate post-printing processes. These processes include fold and cut operations followed by some form of binding. Conventional imposition processes are executed on a computer workstation prior to the printing process. An imposition process operates on one or more PDL page files, for example as produced by a interpreter, and layout information for a given sheet. The layout information describes how the pages are to be arranged to achieve the desired output result. The output of an imposition process is generally a single PDL file that includes all the data required (including external references if any) to print the sheet by a printing device.